Many existing mobile applications or apps running on various client devices (e.g., mobile devices, laptops, etc.) are so-called native applications, which are device-dependent and written in code native to and compiled to run with a particular processor having a set of instructions under a specific platform or operating system (OS) such as iOS, Android, Windows, etc. Such native applications typically are in contrast with web-based software components embedded in web applications, wherein the web-based components are typically written in device-independent code such as JavaScript and can run on various types of platforms, processors and/or OSes without modification.
With the exponential growth of the mobile apps, software development platforms have been provided to enable users/programmers to develop mobile app efficiently using various tools and components made available on such platforms. For a non-limiting example, one such platform is React Native, which allows a developer to build mobile apps using various declarative components in JavaScript. Although React Native enables the developer to build new mobile apps entirely from scratch on its platform, such JavaScript-oriented platform is not designed to allow such JavaScript-based mobile apps to interact or exchange information with other existing mobile applications that were written in native code. As a result, all these existing native mobile applications need to be rewritten in order to be compatible with the newly-developed apps in the same working environment as React Native. Such rewriting may incur significant cost in terms of resources and development time. It is thus desirable to be able to provide a mobile app development platform that is capable of supporting reuse of web-based software components for mobile app development.
The foregoing examples of the related art and limitations related therewith are intended to be illustrative and not exclusive. Other limitations of the related art will become apparent upon a reading of the specification and a study of the drawings.